gusucode.com > MATLAB与控制系统仿真实践 源代码 > MATLAB与控制系统仿真实践 源代码/第十四章/eg14_11.m
delta=3;%需修改为delta=5时符合要求 s=tf('s'); G=20/(s*(s+1)); margin(G) [gm,pm]=margin(G) phim1=50; phim=phim1-pm+delta; phim=phim*pi/180; alfa=(1+sin(phim))/(1-sin(phim)); a=10*log10(alfa); [mag,phase,w]=bode(G); adB=20*log10(mag); wm=spline(adB,w,-a); t=1/(wm*sqrt(alfa)); Gc=(1+alfa*t*s)/(1+t*s); [gmc,pmc]=margin(G*Gc) figure; margin(G*Gc) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% figure; step(feedback(G,1),feedback(G*Gc,1),':') gtext('校正前系统'); gtext('校正后系统'); figure; G2=feedback(G*Gc,1); [num2,den2]=tfdata(G2,'v'); t=0:0.01:3; y2=step(num2,[den2,0],t); plot(t,t,t,y2,':');grid title('斜坡输入和校正后系统的斜坡响应'); legend('斜坡输入','校正后系统的斜坡响应');